package com.atguigu.yygh.common.controllerutil;

import java.util.regex.Pattern;

//正则表达式 进行数据判断
public class Expression {

    //邮箱地址判断
    public Boolean Email(String str) {
        // 以.cn结尾的邮箱
        if (str.matches("[a-zA-Z0-9]{6,36}@[a-zA-Z0-9]{3,10}(\\.com)?(\\.cn)")
                || str.matches("[a-zA-Z0-9]{3,10}@[a-zA-Z0-9]{1,36}(\\.com)")) {
            System.out.println(str + " 是正确的IP");
            return true;
        } else {
            System.out.println(str + " 是非法IP");
            return false;
        }
    }

    /**
     * 网址判断
     *
     * 无法识别  # 号
     */
    public static Boolean URL(String scanStr) {
        String regex = "^([hH][tT]{2}[pP]:/*|[hH][tT]{2}[pP][sS]:/*|[fF][tT][pP]:/*)(([A-Za-z0-9-~]+).)+([A-Za-z0-9-~\\/])+(\\?{0,1}(([A-Za-z0-9-~]+\\={0,1})([A-Za-z0-9-~]*)\\&{0,1})*)$";
        Pattern pattern = Pattern.compile(regex);
        if (pattern.matcher(scanStr).matches()) {
            System.out.println(scanStr + " 是正确的网址");
            return true;
        } else {
            System.out.println(scanStr + " 是非法网址");
            return false;
        }
    }

    //11位手机号进行验证
    public static Boolean PhoneNumber(String number) {
        if (number.matches("^1\\d{10}$")) {
            System.out.println("手机号ok");
            return true;
        } else
            System.out.println("手机号no");
        return false;
    }
}
